package cn.com.hhrcw.enterprise.vo;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import org.jeecg.common.aspect.annotation.Dict;
import org.jeecgframework.poi.excel.annotation.Excel;

import java.io.Serializable;
import java.util.Date;

/**
 * @Description: 个人基本信息
 * @Author: jiangdong
 * @Date: 2020-11-03
 * @Version: V1.0
 */
@Data
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
@ApiModel(value = "pi_info响应结果", description = "个人基本信息")
public class PiInfoVO implements Serializable {


    /**
     *
     */
    private String id;


    /**
     * 创建时间
     */
    @ApiModelProperty(value = "创建时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @Excel(name = "创建时间", format = "yyyy-MM-dd HH:mm:ss")
    private Date createTime;


    /**
     * 创建人
     */
    @ApiModelProperty(value = "创建人")
    @Excel(name = "创建人")
    private String createBy;


    /**
     * 更新人
     */
    @ApiModelProperty(value = "更新人")
    @Excel(name = "更新人")
    private String updateBy;


    /**
     * 更新时间
     */
    @ApiModelProperty(value = "更新时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @Excel(name = "更新时间", format = "yyyy-MM-dd HH:mm:ss")
    private Date updateTime;


    /**
     * 删除标识
     */
    @ApiModelProperty(value = "删除标识")
    private Boolean delFlag;


    /**
     * 所属部门
     */
    @ApiModelProperty(value = "所属部门")
    @Dict(dictTable = "sys_depart", dicCode = "id", dicText = "depart_name")
    @Excel(name = "所属部门", dictTable = "sys_depart", dicCode = "id", dicText = "depart_name")
    private String sysOrgCode;


    /**
     *
     */
    private String r1;


    /**
     *
     */
    private String r2;


    /**
     *
     */
    private String r3;


    /**
     *
     */
    private String r4;


    /**
     *
     */
    private String r5;


    /**
     *
     */
    private String r6;


    /**
     *
     */
    private String r7;


    /**
     *
     */
    private String r8;


    /**
     *
     */
    private String r9;


    /**
     *
     */
    private String r10;


    /**
     * 用户名
     */
    @ApiModelProperty(value = "用户名")
    @Excel(name = "用户名")
    private String username;


    /**
     * 邮箱
     */
    @ApiModelProperty(value = "邮箱")
    @Excel(name = "邮箱")
    private String email;


    /**
     * 性别0未设置 1男 2女
     */
    @ApiModelProperty(value = "性别0未设置 1男 2女")
    @Excel(name = "性别0未设置")
    private Integer sex;


    /**
     * 出生日期
     */
    @ApiModelProperty(value = "出生日期")
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    @Excel(name = "出生日期", format = "yyyy-MM-dd")
    private Date birthday;


    /**
     * 户口所在地
     */
    @ApiModelProperty(value = "户口所在地")
    @Excel(name = "户口所在地")
    private String homeTown;


    /**
     * 现居地
     */
    @ApiModelProperty(value = "现居地")
    @Excel(name = "现居地")
    @Dict(dictTable = "sys_area", multiple = true, dicCode = "id", dicText = "name")
    private String liveCity;


    /**
     * 0 职场人 1应届生  2在校生
     */
    @ApiModelProperty(value = "0 职场人 1应届生  2在校生")
    @Excel(name = "0")
    private Integer idEntity;


    /**
     * 参加工作时间
     */
    @ApiModelProperty(value = "参加工作时间")
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    @Excel(name = "参加工作时间", format = "yyyy-MM-dd")
    private Date jobTime;


    /**
     * 电话
     */
    @ApiModelProperty(value = "电话")
    @Excel(name = "电话")
    private String phone;


    /**
     *
     */
    private String political;


    /**
     * 工作经验
     */
    @ApiModelProperty(value = "工作经验")
    @Excel(name = "工作经验")
    private Integer workYears;


    /**
     * 0 未婚 1已婚已育 2 已婚未育 3离异
     */
    @ApiModelProperty(value = "0 未婚 1已婚已育 2 已婚未育 3离异")
    @Excel(name = "0")
    private Integer maritalStatus;


    /**
     * 工作状态 0离职-随时到岗 1在职-月内到岗 2-在职考虑机会 3在职-暂不考虑
     */
    @ApiModelProperty(value = "工作状态 0离职-随时到岗 1在职-月内到岗 2-在职考虑机会 3在职-暂不考虑")
    @Excel(name = "工作状态")
    private Integer workState;


    /**
     * 用户id
     */
    @ApiModelProperty(value = "用户id")
    @Excel(name = "用户id")
    private String userId;


    /**
     * 身份证正面照片id
     */
    @ApiModelProperty(value = "身份证正面照片id")
    @Excel(name = "身份证正面照片id")
    @Dict(dictTable = "file", dicCode = "id", dicText = "url")
    private String positiveFileid;


    /**
     * 身份证反面照片id
     */
    @ApiModelProperty(value = "身份证反面照片id")
    @Excel(name = "身份证反面照片id")
    @Dict(dictTable = "file", dicCode = "id", dicText = "url")
    private String backFileid;


    /**
     * 身份证号
     */
    @ApiModelProperty(value = "身份证号")
    @Excel(name = "身份证号")
    private String idNumber;


    /**
     * 头像文件id
     */
    @ApiModelProperty(value = "头像文件id")
    @Excel(name = "头像文件id")
    @Dict(dictTable = "file", dicCode = "id", dicText = "url")
    private String photoId;


    /**
     * 姓名
     */
    @ApiModelProperty(value = "姓名")
    @Excel(name = "姓名")
    private String name;


    /**
     * 身份
     * 0 求职者
     * 1 企业用户
     * 2 后台人员
     * 多个,分开
     */
    @ApiModelProperty(value = "身份 0 求职者 1 企业用户 2 后台人员 多个,分开")
    @Excel(name = "身份 0")
    private String roleType;

    /**
     * 昵称
     */
    private String nickName;

    private Integer age;


    /**
     * 在招职位数
     */
    private Integer onlineJobCount;

    /**
     * 近七天简历数量
     */
    private Integer sevenCount;

    /**
     * 职位
     */
    private String stationName;

    /**
     * 学历
     */
    private String eduLevel;

    /**
     * 企业用户角色标识
     * 0-普通企业用户
     * 1-企业超级管理员
     */
    private Integer enRoleType;


    /**
     * 现居地详细地址
     */
    private String address;
}
